#pragma once
#include "trt_define.h"
#include <opencv2/opencv.hpp>

_TRT_INFER_BEGIN
class AffineMatrixWapperPrivateData;
class AffineMatrixWapper
{
public:
    explicit AffineMatrixWapper();
    ~AffineMatrixWapper();
    void move(float x, float y);
    void rotate(float angle);
    void scale(float x, float y);
    void crop(float x, float y, float w, float h);
    size_t get_matrix_size();
    std::vector<float> d2i();
    std::vector<float> i2d();
private:
    AffineMatrixWapperPrivateData *data_;
};
_TRT_INFER_END